Termination Proof Script
Consider the TRS R consisting of the rewrite rules
|
1: |
|
0(#) |
→ # |
2: |
|
# + x |
→ x |
3: |
|
x + # |
→ x |
4: |
|
0(x) + 0(y) |
→ 0(x + y) |
5: |
|
0(x) + 1(y) |
→ 1(x + y) |
6: |
|
1(x) + 0(y) |
→ 1(x + y) |
7: |
|
0(x) + j(y) |
→ j(x + y) |
8: |
|
j(x) + 0(y) |
→ j(x + y) |
9: |
|
1(x) + 1(y) |
→ j((x + y) + 1(#)) |
10: |
|
j(x) + j(y) |
→ 1((x + y) + j(#)) |
11: |
|
1(x) + j(y) |
→ 0(x + y) |
12: |
|
j(x) + 1(y) |
→ 0(x + y) |
13: |
|
(x + y) + z |
→ x + (y + z) |
14: |
|
opp(#) |
→ # |
15: |
|
opp(0(x)) |
→ 0(opp(x)) |
16: |
|
opp(1(x)) |
→ j(opp(x)) |
17: |
|
opp(j(x)) |
→ 1(opp(x)) |
18: |
|
x - y |
→ x + opp(y) |
19: |
|
# * x |
→ # |
20: |
|
0(x) * y |
→ 0(x * y) |
21: |
|
1(x) * y |
→ 0(x * y) + y |
22: |
|
j(x) * y |
→ 0(x * y) - y |
23: |
|
(x * y) * z |
→ x * (y * z) |
24: |
|
(x + y) * z |
→ (x * z) + (y * z) |
25: |
|
x * (y + z) |
→ (x * y) + (x * z) |
|
There are 38 dependency pairs:
|
26: |
|
0(x) +# 0(y) |
→ 0#(x + y) |
27: |
|
0(x) +# 0(y) |
→ x +# y |
28: |
|
0(x) +# 1(y) |
→ x +# y |
29: |
|
1(x) +# 0(y) |
→ x +# y |
30: |
|
0(x) +# j(y) |
→ x +# y |
31: |
|
j(x) +# 0(y) |
→ x +# y |
32: |
|
1(x) +# 1(y) |
→ (x + y) +# 1(#) |
33: |
|
1(x) +# 1(y) |
→ x +# y |
34: |
|
j(x) +# j(y) |
→ (x + y) +# j(#) |
35: |
|
j(x) +# j(y) |
→ x +# y |
36: |
|
1(x) +# j(y) |
→ 0#(x + y) |
37: |
|
1(x) +# j(y) |
→ x +# y |
38: |
|
j(x) +# 1(y) |
→ 0#(x + y) |
39: |
|
j(x) +# 1(y) |
→ x +# y |
40: |
|
(x + y) +# z |
→ x +# (y + z) |
41: |
|
(x + y) +# z |
→ y +# z |
42: |
|
OPP(0(x)) |
→ 0#(opp(x)) |
43: |
|
OPP(0(x)) |
→ OPP(x) |
44: |
|
OPP(1(x)) |
→ OPP(x) |
45: |
|
OPP(j(x)) |
→ OPP(x) |
46: |
|
x -# y |
→ x +# opp(y) |
47: |
|
x -# y |
→ OPP(y) |
48: |
|
0(x) *# y |
→ 0#(x * y) |
49: |
|
0(x) *# y |
→ x *# y |
50: |
|
1(x) *# y |
→ 0(x * y) +# y |
51: |
|
1(x) *# y |
→ 0#(x * y) |
52: |
|
1(x) *# y |
→ x *# y |
53: |
|
j(x) *# y |
→ 0(x * y) -# y |
54: |
|
j(x) *# y |
→ 0#(x * y) |
55: |
|
j(x) *# y |
→ x *# y |
56: |
|
(x * y) *# z |
→ x *# (y * z) |
57: |
|
(x * y) *# z |
→ y *# z |
58: |
|
(x + y) *# z |
→ (x * z) +# (y * z) |
59: |
|
(x + y) *# z |
→ x *# z |
60: |
|
(x + y) *# z |
→ y *# z |
61: |
|
x *# (y + z) |
→ (x * y) +# (x * z) |
62: |
|
x *# (y + z) |
→ x *# y |
63: |
|
x *# (y + z) |
→ x *# z |
|
The approximated dependency graph contains 3 SCCs:
{27-35,37,39-41},
{43-45}
and {49,52,55-57,59,60,62,63}.
-
Consider the SCC {27-35,37,39-41}.
The usable rules are {1-13}.
The constraints could not be solved.
-
Consider the SCC {43-45}.
There are no usable rules.
By taking the AF π with
π(0) = π(1) = π(OPP) = 1 together with
the lexicographic path order with
empty precedence,
the rules in {43,44}
are weakly decreasing and
rule 45
is strictly decreasing.
There is one new SCC.
-
Consider the SCC {43,44}.
By taking the AF π with
π(0) = π(OPP) = 1 together with
the lexicographic path order with
empty precedence,
rule 43
is weakly decreasing and
rule 44
is strictly decreasing.
There is one new SCC.
-
Consider the SCC {43}.
By taking the AF π with
π(OPP) = 1 together with
the lexicographic path order with
empty precedence,
rule 43
is strictly decreasing.
-
Consider the SCC {49,52,55-57,59,60,62,63}.
The constraints could not be solved.
Tyrolean Termination Tool (3.64 seconds)
--- May 4, 2006